import { createRouter, createWebHistory } from 'vue-router'
import NProgress from 'nprogress'
import 'nprogress/nprogress.css'
NProgress.configure({
  showSpinner: false
})

// createRouter 创建路由实例，===> new VueRouter()
// history 是路由模式，hash模式，history模式
// createWebHistory() 是开启history模块   http://xxx/user
// createWebHashHistory() 是开启hash模式    http://xxx/#/user

// vite 的配置 import.meta.env.BASE_URL 是路由的基准地址，默认是 ’/‘
// https://vitejs.dev/guide/build.html#public-base-path
// 如果将来你部署的域名路径是：http://xxx/my-path/user
// vite.config.ts  添加配置  base: my-path，路由这就会加上 my-path 前缀了
const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes: [
    {
      path: '/home',
      component: () => import('@/views/Home/index.vue'),
      meta: { title: '预约' }
    },
    {
      path: '/reservation',
      component: () => import('@/views/reservationPage/index.vue'),
      meta: { title: '我的预约' }
    },
    {
      path: '/result',
      component: () => import('@/views/resultPage/index.vue'),
      meta: { title: '我的成绩' }
    }
  ]
})

router.beforeEach((to) => {
  NProgress.start()
  // 用户仓库
  // const store = useUserStore()
  // // 不需要登录的页面，白名单
  // const wihteList = ['/home']
  // // 如果没有登录且不在白名单内，去登录
  // if (!store.user?.token && !wihteList.includes(to.path)) return '/home'
  // 否则不做任何处理
})

router.afterEach((to) => {
  // 设置标题
  document.title = `${import.meta.env.VITE_APP_TITLE}-${to.meta.title || ''}`
  NProgress.done()
})

export default router
